package com.feilong.modules.service.goods;

import com.baomidou.mybatisplus.extension.service.IService;
import com.feilong.modules.model.goods.po.GoodsCategoryPO;
import com.feilong.modules.model.goods.request.AddCategoryRequest;
import com.feilong.modules.model.goods.request.UpdateCategoryRequest;
import com.feilong.modules.model.goods.vo.GoodsCategoryVO;

import java.util.List;

public interface GoodsCategoryService extends IService<GoodsCategoryPO> {

    /**
     * 获取所有商品分类
     * @return
     */
    List<GoodsCategoryPO> getCategory();

    /**
     * 根据商品id获取商品所属分类
     * @param goodsId
     * @return
     */
    List<Integer> getGoodsCategoryId(Integer goodsId);

    /**
     * 根据商品分类id获取所有商品
     * @param categoryId
     * @return
     */
    List<GoodsCategoryVO> getCategoryDetail(Integer categoryId);

    /**
     * 更新商品分类
     * @param request
     */
    void updateCategory(UpdateCategoryRequest request);

    /**
     * 添加商品分类
     * @param request
     */
    void addCategory(AddCategoryRequest request);

    /**
     * 根据分类id删除商品分类信息
     * @param categoryId
     */
    void delCategory(Integer categoryId);
}
